# 对于这一组电影数据，如果我们想
# runtime的分布情况，应该如何呈现数据？

from matplotlib import pyplot as plt
import pandas as pd

file_path  ='./IMDB-Movie-Data.csv'

df = pd.read_csv(file_path)

print(df.head(1))
# print(df.info())

# 首先需要提取runtime
# runtime片长是一段一段的，可以用直方图进行统计，
series_runtime = df.loc[:,'Rating']
print(series_runtime.head(1))
print(type(series_runtime))  #提取出来的为series类型数据

# 准备最大值与最小值
# 准备组距

max_runtime = series_runtime.max()
min_runtime = series_runtime.min()
between_runtime = max_runtime - min_runtime
print(between_runtime)
rate_bin = 0.5
bin_nums = int(between_runtime//rate_bin)
# print(int(bin_nums))


# 画图
plt.figure(figsize=(20,8),dpi=80)


# 发现是0.5的比率，所以：：0.5是不行的，用推导式
# plt.xticks(list(range(min_runtime,max_runtime+0.5))[::0.5])
xtick_list = [min_runtime,]
while min_runtime<max_runtime:
    min_runtime += rate_bin
    xtick_list.append(min_runtime)
# 为了使xtick跟hist画图的数据一致，所以hist中的分组按照自定义的分组
plt.hist(series_runtime.values, xtick_list)
plt.xticks(xtick_list)

plt.show()









